/**
 *  Copyright (C) 2008-2013  Telosys project org. ( http://www.telosys.org/ )
 *
 *  Licensed under the GNU LESSER GENERAL PUBLIC LICENSE, Version 3.0 (the "License");
 *  you may not use this file except in compliance with the License.
 *  You may obtain a copy of the License at
 *
 *          http://www.gnu.org/licenses/lgpl.html
 *
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.
 */
package org.telosys.tools.db.model;

import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;

public class DatabaseTables implements Iterable<DatabaseTable>
{
	private LinkedList<DatabaseTable> tables = new LinkedList<DatabaseTable>();
	
	
	protected void addTable(DatabaseTable databaseTable )
	{
		tables.addLast(databaseTable);
	}
	
	public List<DatabaseTable> getTables()
	{
		return tables ;
	}
	
	public Iterator<DatabaseTable> iterator()
	{
		return tables.iterator();
	}
	
	public DatabaseTable getTableByName(String tableName)
	{
		if ( null == tableName ) throw new IllegalArgumentException("Table name is null");
//		Iterator iter = tables.iterator();
//		while ( iter.hasNext() )
//		{
//			DatabaseTable databaseTable = (DatabaseTable) iter.next();
		for ( DatabaseTable databaseTable : tables ) {
			if ( tableName.equals( databaseTable.getTableName() ) )
			{
				return databaseTable ;
			}
		}
		return null ;
	}
}
